package ruiFight.collect.service;

import java.util.List;
import java.util.Map;

import ruiFight.collect.model.Users;
import ruiFight.collect.service.base.BaseService;

/**
 * @author kanyun
 */
public interface UsersService extends BaseService<Users, Integer> {

    /**
     * @describe: 根据条件获取人员列表
     * @params:
     * @Author: Kanyun
     * @Date: 2018/1/17 0017 10:10
     */
    List<Users> findUserByCondition(Users users);

    /**
     * @describe: 根据条件获取人员数量
     * @params:
     * @Author: Kanyun
     * @Date: 2018/1/17 0017 10:10
     */
    Integer findUserCountByCondition(Users users);
    
    /** 
    * @Title: findStatisticalUserCount 
    * @Description: TODO(图表获取人数) 
    * @param @param paramMap
    * @param @return     
    * @return List<Map<String,Object>>    返回类型 
    * @throws 
    */
    List<Map<String,Object>>findStatisticalUserCount(Map<String, Object> paramMap);
	/** 
	* @Title: findStatisticalUserCountByGLZ 
	* @Description: TODO(管理站获取用户采集的人口数量) 
	* @param @param paramMap
	* @param @return     
	* @return List<Map<String,Object>>    返回类型 
	* @throws 
	*/
	List<Map<String,Object>>findStatisticalUserCountByGLZ(Map<String, Object> paramMap);
	
    /**
     * 派出所获取辖区内人员信息
     */
	List<Map<String,Object>> getUserList(Map<String, Object> paramMap);
    /**
     * 派出所获取辖区内人员数量
     */
    Integer getUserCount(Map<String, Object> paramMap);
    /**
     * 添加或修改来京人员信息
     * @param users
     */
//	void addOrUpdateLJUser(Users users,Tenement tenement);
	
	/**
	 * 查询当前人是否还有其他房屋
	 * @param userId
	 * @return
	 */
	Integer getUsersCount(Integer usersId);
	
	/**
	 * 删除房屋和人的关联
	 * @param paramMap
	 * @return
	 */
	Integer delUsersAddress(Map<String, Object> paramMap);
	
	/**
	 * 新增房屋和人的关联
	 * @param paramMap
	 * @return
	 */
	Integer insertUsersAddress(Map<String, Object> paramMap);
	/**
	 * 校验当前房屋是否已录入了当前人
	 * @param paramMap
	 * @return
	 */
	Users verifyUsers(String idNo);
}
